package dreamdancetiktokstruct

type LiveCommentItem struct {
	MsgId     string `json:"msg_id"`
	SecOpenid string `json:"sec_openid"`
	Content   string `json:"content"`
	AvatarUrl string `json:"avatar_url"`
	Nickname  string `json:"nickname"`
	Timestamp int64  `json:"timestamp"`
}

type LiveGiftItem struct {
	MsgId          string `json:"msg_id"`
	SecOpenid      string `json:"sec_openid"`
	SecGiftId      string `json:"sec_gift_id"`
	GiftNum        int    `json:"gift_num"`
	GiftValue      int    `json:"gift_value"`
	Test           bool   `json:"test"`
	AvatarUrl      string `json:"avatar_url"`
	Nickname       string `json:"nickname"`
	Timestamp      int64  `json:"timestamp"`
	SecMagicGiftId string `json:"sec_magic_gift_id"` // 运魔方礼物id
}

type LiveLikeItem struct {
	MsgId     string `json:"msg_id"`
	SecOpenid string `json:"sec_openid"`
	LikeNum   int64  `json:"like_num"`
	AvatarUrl string `json:"avatar_url"`
	Nickname  string `json:"nickname"`
	Timestamp int64  `json:"timestamp"`
}

type ListStruct struct {
	Timestamp string `json:"timestamp"`
	RoomId    string `json:"roomId"`
	MsgType   string `json:"msgType"`
	BodyStr   string `json:"bodyStr"`
}

type ListStructCommon struct {
	Timestamp int64  `json:"timestamp"`
	RoomId    string `json:"roomId"`
	MsgType   string `json:"msgType"`
	BodyStr   string `json:"bodyStr"`
	MsgId     string `json:"msg_id"`
	SecOpenid string `json:"sec_openid"`
	Content   string `json:"content"`
	AvatarUrl string `json:"avatar_url"`
	Nickname  string `json:"nickname"`
	SecGiftId string `json:"sec_gift_id"`
	GiftNum   int    `json:"gift_num"`
	GiftValue int    `json:"gift_value"`
	Test      bool   `json:"test"`
	LikeNum   int64  `json:"like_num"`
}

type EndModelCombinationItem struct {
	HostNickname     string `json:"host_nickname"`       //主播昵称
	HostNo           string `json:"host_no"`             //主播编号
	RoomId           string `json:"room_id"`             //直播间id
	RoomCreateAt     int64  `json:"room_create_at"`      //直播间id
	ModelId          string `json:"model_id"`            //局id
	ModelCreateAt    int64  `json:"model_create_at"`     //直播间id
	ZSetKey          string `json:"z_set_key"`           //主动at人的id
	HashDetailMapKey string `json:"hash_detail_map_key"` //组合详情
	BeginTime        string `json:"begin_time"`          //区间开始时间
	EndTime          string `json:"end_time"`            //区间结束时间
	UidActive        string `json:"uid_active"`          //主动at人的id
	UidPassive       string `json:"uid_passive"`         //主动at人的id
	ActiveScore      int64  `json:"active_score"`        //积分
	PassiveScore     int64  `json:"passive_score"`       //积分
	TotalScore       int64  `json:"total_score"`         //总积分
}

// FullServerSpeaker 全服喇叭
type FullServerSpeaker struct {
	FullType                   int32   `json:"full_type"`                      //0:单人10个神秘空投，全服特效;1:结婚模式组成cp神秘空投;2:离婚全服喇叭
	UserIdLeft                 string  `json:"user_id_left"`                   //送礼人
	UserNameLeft               string  `json:"user_name_left"`                 //送礼人
	UserAvatarLeft             string  `json:"user_avatar_left"`               //用户头像
	UserIdRight                string  `json:"user_id_right"`                  //蹭礼物的
	UserNameRight              string  `json:"user_name_right"`                //蹭礼物的
	UserAvatarRight            string  `json:"user_avatar_right"`              //蹭礼物的
	PropsNo                    int64   `json:"props_no"`                       //
	PropsExpireTime            int64   `json:"props_expire_time"`              //
	PropsNumber                int32   `json:"props_number"`                   //
	GiftId                     int64   `json:"gift_id"`                        // 礼物Id
	GiftNum                    int64   `json:"gift_num"`                       // 礼物数量
	Rank                       int64   `json:"rank"`                           // 排名
	UserCurrentElementNosLeft  []int64 `json:"user_current_element_nos_left"`  //用户当前装扮
	UserCurrentElementNosRight []int64 `json:"user_current_element_nos_right"` //蹭礼物的当前装扮
	UserSexLeft                int64   `json:"user_sex_left"`                  //用户性别
	UserSexRight               int64   `json:"user_sex_right"`                 //用户性别
	Status                     int64   `json:"status"`                         //状态 0:不保存，1:保存
	UiId                       string  `json:"ui_id"`                          // 界面id
	Score                      int64   `json:"score"`                          // 分数
	Day                        int64   `json:"day"`                            // 天数
	AvatarFrameLeft            int64   `json:"avatar_frame_left"`              // 头像框
	AvatarFrameRight           int64   `json:"avatar_frame_right"`             // 头像框
}

//type PackageDetailRedis struct {
//	PropType      int   `json:"prop_type"`      //道具类型类型  1:散件道具;2:
//	ElementType   int   `json:"element_type"`   //具体散件类型
//	ElementNo     int64 `json:"element_no"`     //散件编号
//	ElementNumber int64 `json:"element_number"` //散件数量
//	ExpiredTime   int64 `json:"expired_time"`   //散件过期时间
//}

type PackageDetailRedis struct {
	PropType      int   `json:"prop_type"`      //一级类型  1:服饰;2:道具;3:工具
	ElementType   int   `json:"element_type"`   //二级类型
	ElementNo     int64 `json:"element_no"`     //服饰或者道具编号
	ElementNumber int64 `json:"element_number"` //服饰默认为1，永远为1，道具叠加数量
	ExpiredTime   int64 `json:"expired_time"`   //服饰过期时间，不存道具过期时间
	ActivityId    int64 `json:"activity_id"`    //活动id，主要给碎片道具区分用的
}

type UserPackageListHasChangeItemRedis struct {
	PropType    int    `json:"prop_type"`    //道具类型类型  1:散件道具;2:碎片
	UserId      string `json:"user_id"`      //散件编号
	PropNo      int64  `json:"prop_no"`      //散件编号
	PropNumber  int64  `json:"prop_number"`  //散件数量
	ExpiredTime int64  `json:"expired_time"` //散件过期时间
}

type UserPushAchievement struct {
	UserId        string `json:"userId"`        // 用户id
	AchievementNo int64  `json:"achievementNo"` // 成就no
	CreatedAt     int64  `json:"createdAt"`     // 获得时间
}

type Log struct {
	LogId   string      `json:"logId"`
	RoomId  string      `json:"roomId"`
	ModelId string      `json:"modelId"`
	Msg     string      `json:"msg"`
	Req     interface{} `json:"req"`
	Resp    interface{} `json:"resp"`
	Err     interface{} `json:"err"`
}

type Body struct {
	Msg_type string `json:"msg_type"`
	Content  struct {
		Post struct {
			Zh_cn struct {
				Title   string      `json:"title"`
				Content [][]Content `json:"content"`
			} `json:"zh_cn"`
		} `json:"post"`
	} `json:"content"`
}

type Content struct {
	Tag  string `json:"tag"`
	Text string `json:"text"`
}

type UserPet struct {
	UserIdPetId string `json:"userIdPetId"`
	UserId      string `json:"userId"`
	Avatar      string `json:"avatar"`
	Nickname    string `json:"nickname"`
	AvatarFrame string `json:"avatarFrame"`
	PetId       string `json:"petId"`
	PetNo       string `json:"petNo"`
	PetName     string `json:"petName"`
	Growth      int64  `json:"growth"`
	Iq          int64  `json:"iq"`
	Charm       int64  `json:"charm"`
}

type PetInfo struct {
	No       string `json:"no"`
	Name     string `json:"name"`
	Birthday int64  `json:"birthday"`
	Element  string `json:"element"`
}

type SelectGroupReq struct {
	AppId     string `json:"app_id"`     // 小玩法app_id
	OpenId    string `json:"open_id"`    // 用户open_id
	RoomId    string `json:"room_id"`    // 房间Id
	GroupId   string `json:"group_id"`   // 阵营Id
	AvatarUrl string `json:"avatar_url"` // 用户头像
	NickName  string `json:"nickname"`   // 用户昵称 不加密
}

type Validity struct {
	Validity int64 //掉落的小时数
	Weight   int64 //权重
}

type TreasureBox struct { //直播间宝箱
	Validities []Validity
	Hit        int64 //中奖权重
	Missed     int64 //不中奖权重
	Least      int64 //前多少抽不出
	Most       int64 //多少抽必出
}

type NewSpecialEffectsItem struct {
	SpecialEffectsId  int64 `json:"special_effects_id"`  //特效id
	SpecialEffectsNum int64 `json:"special_effects_num"` //特效数量
}

type IconInfo struct {
	Icon     string `json:"icon"`     // 缩略图地址
	IconName string `json:"iconName"` // 缩略图地址名字
}

type DonationRankingsGiftInfo struct {
	GiftId  string `json:"gift_id"`  // 礼物Id
	GiftNum int64  `json:"gift_num"` // 礼物数量
}
